Visual display apparatuses such as cathode ray tube terminals, impact and thermal printers, laser beam raster scanned displays and the like can have a number of hardware and software specialized functions which describe the displayed image besides the normal characters. For example, in a CRT terminal the characters can be blinking, half-bright, inverse video or underlined. The characters may be protected so they may not be altered. In addition, the display structure itself may be alterable. All three of these types of information: hardware display parameters, software parameters, and display structures are examples of information which must be embedded in the display text without causing blanks to be inserted in the visual display.
A typical solution is to use a wide display character which has appended to it one bit for each function. Each additional bit represents a different control function. Referring to FIG. 1, there is shown a typical method wherein parallel definition of display parameters is utilized. Such a method would require, for example, if ASCII were the coding utilized, the width of the characters to be 7-bits. One bit in addition would be required for each enhancement mode. Six enhancement modes would require an additional six bits for each character displayed. If one were to add a protected field feature, the total required width necessary would be 14 bits per character. This would require a display memory having a capacity greater than or equal to 14 bits per character. If a particular enhancement feature, for example, underlining, were desired, the enhancement bit would be on for characters displayed with underlining and off for non-underlining. Therefore, whether an enhancement feature is used or not, the extra bits of display storage are required.
Referring to FIG. 2a, there is shown a second method having advantages over the first. In this second technique every character is made 8-bits wide. The characters are of two types: 8-bit data characters and 8-bit control characters. Data characters are directly displayable whereas control characters indicate a change in mode of enhancement or other control function.
Referring to FIG. 2b, assume it is desired to display the word "FIELD" and to underline each character of the word. The traditional technique discussed above would add a bit to each of the displayed data characters indicating that that character is to be underlined. In contrast, the second method would precede the displayable word in the character stream with a control character to "start underlining." This control character would then be followed by the five display characters. After the final data character to be displayed another control character indicating "stop underline" would be sent. It can be seen that the second method requires data storage in the memory only when enhancements are actually used. The second method has advantages over the first in that the control characters are needed only if the current control state is to be changed. No unnecessary memory is required. Further, the number of control functions is not limited.